package com.zhijian.medical.entity.vo.response;

import com.zhijian.medical.entity.dto.ExamCreateAnswerJsonDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @author HCG
 * @version 1.0
 * @date 2022/1/5
 */
@Data
@Api(tags = "考核-试卷显示vo")
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExamDoingVo implements Serializable {
    private static final long serialVersionUID = 556474031046591876L;

    /**
     * 考试开始时间
     */
    @ApiModelProperty("考试开始时间")
    private String startTime;

    /**
     * 考试剩余时长，单位：秒
     */
    @ApiModelProperty("考试剩余时长，单位：秒")
    private Integer leftSecond;

    /**
     * 试卷内容
     */
    @ApiModelProperty("试卷内容")
    private List<ContentVo> content;

    /**
     * 试卷id
     */
    @ApiModelProperty("试卷id")
    private Long id;

    /**
     * 名称
     */
    @ApiModelProperty("名称")
    private String name;

    /**
     * 唯一编码
     */
    @ApiModelProperty("唯一编码")
    private String code;

    /**
     * 状态，0：未提交，1：已提交，2：已作废，3：已打分
     */
    @ApiModelProperty("状态，0：未提交，1：已提交，2：已作废，3：已打分")
    private Byte status;

    /**
     * 学习文件id
     */
    @ApiModelProperty("学习文件id")
    private Long studyId;

    @Data
    @Api(tags = "试卷内容vo")
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public static class ContentVo implements Serializable {

        private static final long serialVersionUID = 968582559093986568L;

        /**
         * 题目id
         */
        @ApiModelProperty("题目id")
        private Long questionId;

        /**
         * 题目内容
         */
        @ApiModelProperty("题目内容")
        private String questionContent;

        /**
         * 对应答案
         */
        @ApiModelProperty("对应答案")
        private List<ExamCreateAnswerJsonDto> answers;

        /**
         * 已经选择的答案，单选题的时候，为答案的id；多选题的时候，为答案的id集合，以英文逗号隔开；填空题或者简答题的时候，为答案内容
         */
        @ApiModelProperty("已经选择的答案，单选题的时候，为答案的id；多选题的时候，为答案的id集合，以英文逗号隔开；填空题或者简答题的时候，为答案内容")
        private String selectAnswer;

    }

}
